/* 
 * Copyright 2013-2020 Modeliosoft
 * 
 * This file is part of Modelio.
 * 
 * Modelio is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * Modelio is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with Modelio.  If not, see <http://www.gnu.org/licenses/>.
 * 
 */
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2015.12.02 at 02:29:48 PM CET
//
package org.modelio.bpmnxml.model;

import com.modeliosoft.modelio.javadesigner.annotations.objid;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlAttribute;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlType;
import javax.xml.namespace.QName;

/**
 * <p>Java class for BPMNShape complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType name="BPMNShape">
 * &lt;complexContent>
 * &lt;extension base="{http://www.omg.org/spec/DD/20100524/DI}LabeledShape">
 * &lt;sequence>
 * &lt;element ref="{http://www.omg.org/spec/BPMN/20100524/DI}BPMNLabel" minOccurs="0"/>
 * &lt;/sequence>
 * &lt;attribute name="bpmnElement" type="{http://www.w3.org/2001/XMLSchema}QName" />
 * &lt;attribute name="isHorizontal" type="{http://www.w3.org/2001/XMLSchema}boolean" />
 * &lt;attribute name="isExpanded" type="{http://www.w3.org/2001/XMLSchema}boolean" />
 * &lt;attribute name="isMarkerVisible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
 * &lt;attribute name="isMessageVisible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
 * &lt;attribute name="participantBandKind" type="{http://www.omg.org/spec/BPMN/20100524/DI}ParticipantBandKind" />
 * &lt;attribute name="choreographyActivityShape" type="{http://www.w3.org/2001/XMLSchema}QName" />
 * &lt;anyAttribute processContents='lax' namespace='##other'/>
 * &lt;/extension>
 * &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 */
@objid ("35b94605-bf0f-491f-974c-c366daa430e2")
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "BPMNShape", namespace = "http://www.omg.org/spec/BPMN/20100524/DI", propOrder = {
    "bpmnLabel"
})
public class BPMNShape extends LabeledShape {
    @objid ("d7e4de0b-0acb-40ea-b3d4-9d9c710e8a14")
    @XmlAttribute(name = "isHorizontal")
    protected Boolean isHorizontal;

    @objid ("f5637116-3e82-41d7-b6a0-13d7c8ab3ae4")
    @XmlAttribute(name = "isExpanded")
    protected Boolean isExpanded;

    @objid ("784b8c1d-a749-45ae-9dea-cdafe77a70c2")
    @XmlAttribute(name = "isMarkerVisible")
    protected Boolean isMarkerVisible;

    @objid ("1ea5228c-eca2-41c6-a391-21a41a5ce1a4")
    @XmlAttribute(name = "isMessageVisible")
    protected Boolean isMessageVisible;

    @objid ("df9f2f9f-c7b0-485e-a988-a0b51a2eab78")
    @XmlAttribute(name = "participantBandKind")
    protected ParticipantBandKind participantBandKind;

    @objid ("31114f5e-6986-4ba9-98dd-bbbcf16e1e9b")
    @XmlElement(name = "BPMNLabel")
    protected BPMNLabel bpmnLabel;

    @objid ("0715c7ef-d473-4ac0-aa22-efa758534257")
    @XmlAttribute(name = "bpmnElement")
    protected QName bpmnElement;

    @objid ("75efb624-0ad5-412d-9532-dc193b3f92f4")
    @XmlAttribute(name = "choreographyActivityShape")
    protected QName choreographyActivityShape;

    /**
     * Gets the value of the bpmnLabel property.
     * @return
     * possible object is
     * {@link BPMNLabel }
     */
    @objid ("f96de6cd-6c56-49b2-8b99-1469e5efb8fb")
    public BPMNLabel getBPMNLabel() {
        return this.bpmnLabel;
    }

    /**
     * Sets the value of the bpmnLabel property.
     * @param value allowed object is
     * {@link BPMNLabel }
     */
    @objid ("5c8d1774-e246-4332-9db7-bd49c61ab6f0")
    public void setBPMNLabel(BPMNLabel value) {
        this.bpmnLabel = value;
    }

    /**
     * Gets the value of the bpmnElement property.
     * @return
     * possible object is
     * {@link QName }
     */
    @objid ("e0212094-ed0f-431d-9fe6-8595516e22fa")
    public QName getBpmnElement() {
        return this.bpmnElement;
    }

    /**
     * Sets the value of the bpmnElement property.
     * @param value allowed object is
     * {@link QName }
     */
    @objid ("9111bcbd-a6c1-49e4-ab5f-d46c4d30ca96")
    public void setBpmnElement(QName value) {
        this.bpmnElement = value;
    }

    /**
     * Gets the value of the isHorizontal property.
     * @return
     * possible object is
     * {@link Boolean }
     */
    @objid ("300cefd4-0962-40bf-adc6-dc8693a1d3d0")
    public Boolean isIsHorizontal() {
        return this.isHorizontal;
    }

    /**
     * Sets the value of the isHorizontal property.
     * @param value allowed object is
     * {@link Boolean }
     */
    @objid ("888ffe2f-b094-4179-9f0d-e15737ed95f2")
    public void setIsHorizontal(Boolean value) {
        this.isHorizontal = value;
    }

    /**
     * Gets the value of the isExpanded property.
     * @return
     * possible object is
     * {@link Boolean }
     */
    @objid ("52f00ac1-48aa-4a1f-a6e4-edaa4a5fd8de")
    public Boolean isIsExpanded() {
        return this.isExpanded;
    }

    /**
     * Sets the value of the isExpanded property.
     * @param value allowed object is
     * {@link Boolean }
     */
    @objid ("e141f915-a3d5-464e-9018-e785e0a7b8e7")
    public void setIsExpanded(Boolean value) {
        this.isExpanded = value;
    }

    /**
     * Gets the value of the isMarkerVisible property.
     * @return
     * possible object is
     * {@link Boolean }
     */
    @objid ("884eb3f9-93c5-4a12-aa1d-de63fee5d95d")
    public Boolean isIsMarkerVisible() {
        return this.isMarkerVisible;
    }

    /**
     * Sets the value of the isMarkerVisible property.
     * @param value allowed object is
     * {@link Boolean }
     */
    @objid ("bb545a2a-76dc-4a95-9cc5-5690a1fb5d5a")
    public void setIsMarkerVisible(Boolean value) {
        this.isMarkerVisible = value;
    }

    /**
     * Gets the value of the isMessageVisible property.
     * @return
     * possible object is
     * {@link Boolean }
     */
    @objid ("23b530f9-bce6-4138-8109-92c1a5a845ce")
    public Boolean isIsMessageVisible() {
        return this.isMessageVisible;
    }

    /**
     * Sets the value of the isMessageVisible property.
     * @param value allowed object is
     * {@link Boolean }
     */
    @objid ("b5b3a8f4-cb89-4d56-bfab-c4d029319fcb")
    public void setIsMessageVisible(Boolean value) {
        this.isMessageVisible = value;
    }

    /**
     * Gets the value of the participantBandKind property.
     * @return
     * possible object is
     * {@link ParticipantBandKind }
     */
    @objid ("03bd6e10-ab8b-406f-b14e-c185149cb9ab")
    public ParticipantBandKind getParticipantBandKind() {
        return this.participantBandKind;
    }

    /**
     * Sets the value of the participantBandKind property.
     * @param value allowed object is
     * {@link ParticipantBandKind }
     */
    @objid ("d47a6868-85bb-4824-a795-fa9e9e9fe6c0")
    public void setParticipantBandKind(ParticipantBandKind value) {
        this.participantBandKind = value;
    }

    /**
     * Gets the value of the choreographyActivityShape property.
     * @return
     * possible object is
     * {@link QName }
     */
    @objid ("449ecc07-5f45-49fd-99bb-23e895ae9876")
    public QName getChoreographyActivityShape() {
        return this.choreographyActivityShape;
    }

    /**
     * Sets the value of the choreographyActivityShape property.
     * @param value allowed object is
     * {@link QName }
     */
    @objid ("f3eb4f30-0425-43b3-809d-aba9c5abeb73")
    public void setChoreographyActivityShape(QName value) {
        this.choreographyActivityShape = value;
    }

}
